#include "dockwindows.h"
#include <QTextEdit>
#include <QDockWidget>

DockWindows::DockWindows(QWidget *parent)
    : QMainWindow(parent)
{
    setWindowTitle(tr("DockWindows"));  //设置主窗口的标题栏文字
    QTextEdit* te = new QTextEdit(this);  //定义这个对象作为主窗口
    te->setText(tr("Main Window"));
    te->setAlignment(Qt::AlignCenter);
    setCentralWidget(te); //把这个定义为主窗口的中央窗体

    //停靠窗口1
    QDockWidget* dock = new QDockWidget(tr("DockWindow1"), this); //这里设定这个窗体的名字
    dock->setFeatures(QDockWidget::DockWidgetMovable);  //设定为可移动，这里也可采用"|"的方式进行特性的设定
    dock->setAllowedAreas(Qt::LeftDockWidgetArea|Qt::RightDockWidgetArea);  //这个是在主窗体的左侧停靠和右侧
    QTextEdit* te1 = new QTextEdit();
    te1->setText(tr("这个是第一个停靠窗体的文本控件显示  1===="));
    dock->setWidget(te1); //把文本控件放入到这个窗口里面
    addDockWidget(Qt::RightDockWidgetArea, dock); //在主窗体中加入这个停靠窗口

    //停靠窗口2
    dock = new QDockWidget(tr("DockWindow2"), this); //这里设定这个窗体的名字
    dock->setFeatures(QDockWidget::DockWidgetClosable|QDockWidget::DockWidgetFloatable);  //设定为可关闭，浮动，这里也可采用"|"的方式进行特性的设定（或的意思）
    QTextEdit* te2 = new QTextEdit();
    te2->setText(tr("这个是第二个停靠窗体的文本控件显示  2===="));
    dock->setWidget(te2); //把文本控件放入到这个窗口里面
    addDockWidget(Qt::RightDockWidgetArea, dock);   //在主窗体中加入这个停靠窗口

    //停靠窗体3
    dock = new QDockWidget(tr("DockWindow3"), this); //这里设定这个窗体的名字
    dock->setFeatures(QDockWidget::AllDockWidgetFeatures);  //设定为全部特性，这里也可采用"|"的方式进行特性的设定（或的意思）
    QTextEdit* te3 = new QTextEdit();
    te3->setText(tr("这个是第三个停靠窗体的文本控件显示  3===="));
    dock->setWidget(te3); //把文本控件放入到这个窗口里面
    addDockWidget(Qt::RightDockWidgetArea, dock);   //在主窗体中加入这个停靠窗口
}

DockWindows::~DockWindows()
{

}
